package com.boot.web.dao;

import com.boot.web.entity.Orders;
import com.boot.base.dao.BaseDao;
import com.boot.web.vo.OrdersVO;
import org.apache.ibatis.annotations.Param;
import org.springframework.core.annotation.Order;

import java.util.List;
import java.util.Map;

/**
 * 订单数据层接口
 * @author 【zhouJie】
 * @date 2021-06-05 14:45:19
 */
public interface OrdersDao extends BaseDao<Orders> {

    List<OrdersVO> queryOrdersVOPageList(Map<String, Object> map);

    List<OrdersVO> queryAllVO();

    List<OrdersVO> queryOrdersVOByStatus(@Param("userId") Integer userId, @Param("status") String status);
    List<OrdersVO> queryOrdersVOByStatus_1(Map<String, Object> params);

    Orders queryByOrderNo(String orderNo);

    Orders queryByIds(@Param("collageListId") Integer collageListId, @Param("userId") Integer userId);

    OrdersVO queryOrdersVOByOrderNo(String orderNo);

    List<Orders> queryOrdersByCollageProductId(Integer modeProductId);

    Orders queryByIsO(@Param("userId") Integer userId, @Param("modeProductId") Integer modeProductId);

    Orders queryByCondition(@Param("userId") Integer userId, @Param("productId") Integer productId);

    List<Orders> queryByBuyBlindBoxAfterHandle();

    List<Orders> queryByShareAfterHandle();

    Orders queryByGameId(@Param("faGameId") Integer faGameId, @Param("faUserId") Integer faUserId);

    Orders queryByGameId_1(@Param("pkGameId") Integer pkGameId, @Param("pkUserId") Integer pkUserId);

    List<OrdersVO> queryBy1980Limit();

    List<OrdersVO> queryByQiXiLimit();

    List<Orders> queryByJudgeJoinCollageMode20(Integer userId);

    List<Orders> queryOrdersByUserIdIsBuyCollage(Integer userId);

    List<Orders> queryOrdersByUserIdIsBuyShare(Integer userId);

    List<Orders> queryOrdersByMode20();

    List<Orders> queryByModeIdAndUserId(@Param("modeId") Integer modeId, @Param("userId") Integer userId);

    List<Orders> queryOrdersBy30Or40(Integer userId);

    List<Orders> queryOrdersBy30Or40_1(Integer userId);

    List<Orders> queryOrdersBy30Total();

    List<Orders> queryOrdersBy40Total();

    List<Orders> queryOrdersByRefund(Integer userId);

    List<Orders> queryByCollageMode30Or40();

    List<Orders> queryByTest();

    List<Orders> queryByTest_1();

    List<Orders> queryByTest_2();

    List<Orders> queryByOrderNo_1();

    List<Orders> queryByTest_3();

}
